<!DOCTYPE html [ <!ENTITY nbsp "&#160;"> ]>
<ui:composition xmlns="http://www.w3.org/1999/xhtml"
	xmlns:ui="http://java.sun.com/jsf/facelets"
	xmlns:f="http://java.sun.com/jsf/core"
	xmlns:h="http://java.sun.com/jsf/html"
	xmlns:p="http://primefaces.org/ui" template="/template/template.xhtml">
	
	<title>RefAxion | Gestion de Talleres Mecanicos</title>

			<link type="image/x-icon" href="img/favicon.ico" rel="shortcut icon" />
			<link rel="shortcut icon" href="img/favicon.ico" />
			
			<f:metadata>
				<f:event type="preRenderView" listener="#{formPaqueteMantencionBean.iniciar}" />
			</f:metadata>  
		
	<ui:define name="body">
	    
		<h1>Formulario de Ingreso de Paquete de Mantencion</h1>
	
		
		<h:form id="formRegistroPaquete" enctype="multipart/form-data">
			<p:panel id="idPanelInfo" header="Datos generales">
				<table>
				
						<tr>
							<td><h:outputLabel value="Fecha Ingreso : " /></td>
							<td><p:calendar id="fechaIngreso"
								value="#{formPaqueteMantencionBean.paqueteNuevo.fechaIngresoTrans}"
								disabled="#{formPaqueteMantencionBean.desabilitado}"
								locale="es" pattern="dd-MM-yyyy"
								readonlyInput="true" navigator="true">
								<!-- <f:validator validatorId="dateRangeValidator" /> -->
								<f:attribute name="fechaIngreso"
									value="#{formPaqueteMantencionBean.paqueteNuevo.fechaIngresoTrans}" />
							</p:calendar> </td>
						</tr>
						<tr>
							<td><h:outputLabel value="Nombre Paquete : " /></td>
							<td><p:inputText id="matricula" value="#{formPaqueteMantencionBean.paqueteNuevo.nombrePaqueteMantencion}" 
							required="true" style="width: 300px;white-space: normal" disabled="#{formPaqueteMantencionBean.desabilitado}" /></td>
						</tr>
				
				</table>
		    </p:panel>
		    
		    
		    <p:spacer width="16" height="16" />
		    <p:panel id="idPanelInfoSelServicios"  header="Seleccionar Servicios Asociados" style="border:0px;">
		    
			    
					<table>
							<tr>
								<td><h:outputLabel value="* Servicios  :       "/></td>
							</tr>
							<tr>	
								<td>
								<p:selectManyMenu id="idServicio" value="#{formPaqueteMantencionBean.listaServiciosSel}"
								 style="width: 400px;white-space: normal" >
										<f:selectItems value="#{formPaqueteMantencionBean.listadoServicios}" />
								</p:selectManyMenu>
								</td>
							</tr>
							
					</table>
					
					
									<p:commandButton id="idAgregarServicio" value="Agregar Servicios Seleccionados" process="@this, idServicio" 
									update=":formRegistroPaquete:tablaServicios :formRegistroPaquete:idPanelInfoSelServicios :formRegistroPaquete:idPanelInfoTotales"
									actionListener="#{formPaqueteMantencionBean.agregarServicio}" disabled="#{formPaqueteMantencionBean.desabilitado}" />
								 
									<p:commandButton id="idLimpiarDatosServicios" value="Limpiar Datos" process="@this" update=":formRegistroPaquete:idPanelInfoSelServicios"
									actionListener="#{formPaqueteMantencionBean.limpiarDatosServicio}" disabled="#{formPaqueteMantencionBean.desabilitado}" />
					<br/>
					<p:spacer width="16" height="16" />

						<p:dataTable id="tablaServicios" var="ser" 
							value="#{formPaqueteMantencionBean.listaServiciosSelEnGrilla}"
							paginator="true" rows="10" paginatorPosition="bottom"
							emptyMessage="No se encontraron registros."
							sortBy="prueba" sortOrder="descending"
							>
							<p:column headerText="ID" sortBy="#{ser.idServicio}">
								<h:outputText value="#{ser.idServicio}" />					
							</p:column>
			
							<p:column headerText="Nombre Servicio" sortBy="#{ser.servicioDescripcion}">
								<h:outputText value="#{ser.servicioDescripcion}" />
							</p:column>
			
							<p:column headerText="Precio $" sortBy="#{ser.precioListaServicio}">
								<h:outputText value="#{ser.precioListaServicio}" />
							</p:column>
							<p:column headerText="Acciones">									
									<p:commandLink id="idEliminarButton" rendered="true"
										
									    onclick="confirmEliminarServicio.show();"
									    actionListener="#{formPaqueteMantencionBean.listenerQuitarServicio(ser)}"
										process="@this">
										<p:graphicImage value="/img/icos_22_eliminar.png"
											title="Quitar Seleccion" />
									</p:commandLink>
							</p:column>								
							<p:summaryRow >
								            <p:column colspan="3" style="text-align:right">
								                Total:
								            </p:column>
								            <p:column>
								               $ #{formPaqueteMantencionBean.serviciosSumaTotalPrecio}
								            </p:column>
							</p:summaryRow>	
							
						</p:dataTable>
			</p:panel>
			
			
			<p:spacer width="16" height="16" />
			<p:panel id="idPanelInfoSelRepuestos" header="Seleccionar Respuestos Asociados" style="border:0px;">
			<p:spacer width="12" height="16" />	
				<table>
						<tr>
							<td><h:outputLabel value="* Repuestos : "/></td>
						</tr>
						<tr>	
							<td>
							<p:selectManyMenu id="idRepuesto" value="#{formPaqueteMantencionBean.listaRepuestosSel}"
							 style="width: 400px;white-space: normal" >
									<f:selectItems value="#{formPaqueteMantencionBean.listadoRepuestos}" />
							</p:selectManyMenu>
							</td>
						</tr>
						
				</table>
				
				
								<p:commandButton id="idAgregarRepuesto" value="Agregar Repuestos Seleccionados" process="@this, idRepuesto" 
								update=":formRegistroPaquete:tablaRepuestos :formRegistroPaquete:idPanelInfoSelRepuestos :formRegistroPaquete:idPanelInfoTotales"
								actionListener="#{formPaqueteMantencionBean.agregarRepuesto}" disabled="#{formPaqueteMantencionBean.desabilitado}" />
							 
								<p:commandButton id="idLimpiarDatosRepuestos" value="Limpiar Datos" process="@this" update=":formRegistroPaquete:idPanelInfoSelRepuestos"
								actionListener="#{formPaqueteMantencionBean.limpiarDatosRepuesto}" disabled="#{formPaqueteMantencionBean.desabilitado}" />
				<br/>
				<p:spacer width="16" height="16" />						
				<p:panel id="idPanelInfoRepuestos" header="Lista de Repuestos Seleccionados">

							<p:dataTable id="tablaRepuestos" var="rep" 
								value="#{formPaqueteMantencionBean.listaRepuestosSelEnGrilla}"
								paginator="true" rows="10" paginatorPosition="bottom"
								emptyMessage="No se encontraron registros."
								sortBy="prueba" sortOrder="descending">
								<p:column headerText="ID" sortBy="#{rep.idRepuesto}">
									<h:outputText value="#{rep.idRepuesto}" />					
								</p:column>
				
								<p:column headerText="Nombre Repuesto" sortBy="#{rep.descripcion}">
									<h:outputText value="#{rep.descripcion}" />
								</p:column>
				
								<p:column headerText="Precio $" sortBy="#{rep.precioRepuesto}">
									<h:outputText value="#{rep.precioRepuesto}" />
								</p:column>
								
								<p:column headerText="Acciones">									
									<p:commandLink id="idEliminarButton2" rendered="true"
										
									    onclick="confirmEliminarRepuesto.show();"
									    actionListener="#{formPaqueteMantencionBean.listenerQuitarRepuesto(rep)}"
										process="@this">
										<p:graphicImage value="/img/icos_22_eliminar.png"
											title="Quitar Seleccion" />
									</p:commandLink>
							    </p:column>								
								<p:summaryRow >
								            <p:column colspan="3" style="text-align:right">
								                Total:
								            </p:column>
								            <p:column>
								                $ #{formPaqueteMantencionBean.repuestosSumaTotalPrecio}
								            </p:column>
								</p:summaryRow>	  
							</p:dataTable>	
				</p:panel>
				
				<p:spacer width="16" height="16" />						
				<p:panel id="idPanelInfoTotales" header="Ingreso de Precio de Venta de Paquete de Mantención">
				<p:spacer width="16" height="16" />	
					<table>
						<tr>
							<td><h:outputLabel value="Precio Total Paquete de Manteción $ : " /></td>
							<td><p:inputText id="precioTotalPaquete" value="#{formPaqueteMantencionBean.precioPaqueteTotalCalculado}" 
							required="true"  disabled="true" /></td>
						</tr>
						<tr>
							<td><h:outputLabel value="Descuento $ : " /></td>
							<td><p:inputText id="descuento" value="#{formPaqueteMantencionBean.descuentoAplicado}" 
							required="true" disabled="#{formPaqueteMantencionBean.desabilitado}" 
							 >
							 <p:ajax event="change" process="@this" update=":formRegistroPaquete:idPanelInfoTotales" 
							 listener="#{formPaqueteMantencionBean.aplicarDescuento}"/>					
							 </p:inputText></td>
						</tr>
						<tr>
							<td><h:outputLabel value="Precio Venta Paquete de Manteción $ : " /></td>
							<td><p:inputText id="precioFinalPaquete" value="#{formPaqueteMantencionBean.precioPaqueteTotalFinal}" 
							required="true" disabled="true" /></td>
						</tr>
					</table>
				</p:panel>
			</p:panel>	
			<p:commandButton value="Registrar Paquete de Mantención" action="#{formPaqueteMantencionBean.registrarPaqueteNuevo}" styleClass="btnEnviar"
								process="@form" update="@form"/>			
		</h:form>
		
		
		
		 <p:confirmDialog id="dialogConfirmEliminarServicio"
			message="¿Desea quitar el item seleccionado?"
			header="Confirmacion" widgetVar="confirmEliminarServicio"
			severity="alert">
			<h:form>
				<p:commandButton value="Si"
					actionListener="#{formPaqueteMantencionBean.confirmarQuitarServicioGrilla}"
					oncomplete="confirmEliminarServicio.hide();" 
					update="@form :formRegistroPaquete:idPanelInfoSelServicios :formRegistroPaquete:idPanelInfoTotales"
					process="@this" immediate="true" />
				<p:commandButton value="No" type="button"
					onclick="confirmEliminarServicio.hide();" immediate="true" />
			</h:form>
		 </p:confirmDialog>
		 
		 <p:confirmDialog id="dialogConfirmEliminarRepuesto"
			message="¿Desea quitar el item seleccionado?"
			header="Confirmacion" widgetVar="confirmEliminarRepuesto"
			severity="alert">
			<h:form>
				<p:commandButton value="Si"
					actionListener="#{formPaqueteMantencionBean.confirmarQuitarRepuestoGrilla}"
					oncomplete="confirmEliminarRepuesto.hide();"
					update="@form :formRegistroPaquete:idPanelInfoSelRepuestos :formRegistroPaquete:idPanelInfoTotales"
					process="@this" immediate="true" />
				<p:commandButton value="No" type="button"
					onclick="confirmEliminarRepuesto.hide();" immediate="true" />
			</h:form>
		 </p:confirmDialog>

		
	</ui:define>
</ui:composition>